package com.demo.chain;

import lombok.extern.slf4j.Slf4j;
import net.hasor.dataway.DatawayApi;
import net.hasor.dataway.authorization.PermissionType;
import net.hasor.dataway.spi.AuthorizationChainSpi;

import java.util.Set;

/**
 * @Classname AuthorizationChain
 * @Description AuthorizationChainSpi 是 Dataway 4.1.9 加入的新特性。在此之前针对界面的权限校验，通常需要通过 InvokerFilter 接口来辅助完成。 有了 AuthorizationChainSpi 之后就可以更加简单方便的对界面操作进行权限控制了
 * @Date 2023/8/4 9:57
 * @Created by Leo825
 */
@Slf4j
public class AuthorizationChain implements AuthorizationChainSpi {

    public static AuthorizationChain getInstance() {
        return new AuthorizationChain();
    }

    @Override
    public boolean doCheck(PermissionType permissionType, DatawayApi datawayApi, boolean b) {
        // 配置所有接口，都是只读权限
        log.info(datawayApi.getOptionMap().toString());
        return false;
    }
}
